﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using ERP.Classes;

namespace ERP.View
{
    public partial class viewErp_Mathang : DevExpress.XtraEditors.XtraForm
    {
        public cs_hmr_usersInfo user = new cs_hmr_usersInfo();
        public int flag = 0;
        public int count = 0;
        public cs_erp_hanghoaInfo hh = new cs_erp_hanghoaInfo();
        public cs_hmr_donviInfo dv = new cs_hmr_donviInfo();

        public viewErp_Mathang()
        {
            InitializeComponent();
        }

        //public cs_hmr_usersInfo user = new cs_hmr_usersInfo();

        private void viewErp_Mathang_Load(object sender, EventArgs e)
        {
            this.Load_Data();
            //this.CheckUser();
            if (this.flag == 2)
            {
                if (this.hh.Get_Info() > 0)
                {
                    this.Load_Info();
                }
                else
                {
                    this.Dispose(true);
                }
            }
            this.CheckUser();
        }
        private void CheckUser()
        {
            cs_hmr_userrightInfo userright = new cs_hmr_userrightInfo();
            userright.groupid = this.user.groupid;
            cs_hmr_winformInfo wf = new cs_hmr_winformInfo();
            wf.tenform = this.Name;
            if (wf.Get_Info() > 0)
            {
                userright.form_id = wf.formid;
                userright.Get_Info();
                if (userright.savedata == 0)
                {
                    this.btnLuu.Enabled = false;
                }
                if (userright.deletedata == 0)
                {
                }
                if (userright.updatedata == 0)
                {
                    this.btnLuu.Enabled = false;
                }
                if (userright.printreport == 0)
                {
                }
            }
        }
        private void btnLuu_Click(object sender, EventArgs e)
        {
            this.Save_Info();
            if (this.hh.tenhh == "" || this.hh.mahh == "" || this.hh.id_nhom == 0)
            {
                MessageBox.Show("Dữ liệu bạn nhập chưa đầy đủ - có thể bạn chưa chọn nhóm hàng!", "Thông báo...");
                return;
            }
            else
            {
                int i =this.hh.ExcuteProcedure(this.flag);
                if (i > 0)
                {
                    MessageBox.Show("Thực hiện lưu thành công!", "Thông báo...");
                    this.Dispose(true);
                }
                else
                {
                    MessageBox.Show("Không thể lưu hàng hóa, có lỗi!", "Thông báo...");
                }

            }
        }

        

        private void Load_Info()
        {
            this.txtTen.Text = this.hh.tenhh;
            this.txtMa.Text = this.hh.mahh;
            this.txtGhichu.Text = this.hh.quycach;
            this.cboDVT.EditValue = this.hh.dvt;
            this.cboNhom.EditValue = this.hh.id_nhom;
            this.ckNguyenlieu.Checked = this.hh.nguyenlieu;
            this.txtGiaban.Value = Convert.ToDecimal(this.hh.giaban);
            this.txtThue.Value = Convert.ToDecimal(this.hh.thue);
        }
        private void Save_Info()
        {
            this.hh.tenhh = this.txtTen.Text.Trim();
            this.hh.mahh = this.txtMa.Text.Trim();
            this.hh.quycach = this.txtGhichu.Text.Trim();
            this.hh.nguyenlieu = Convert.ToBoolean(this.ckNguyenlieu.Checked);
            this.hh.id_nhom = int.Parse(this.cboNhom.EditValue.ToString().Trim());
            this.hh.dvt = int.Parse(this.cboDVT.EditValue.ToString().Trim());
            this.hh.giaban = Convert.ToDouble(this.txtGiaban.Value);
            this.hh.thue = Convert.ToDouble(this.txtThue.Value);
            this.hh.hienthi = true;
        }

        private void Load_Data()
        {
            DataSet ds = new DataSet("ds");
            cs_erp_nhomhangInfo nhom = new cs_erp_nhomhangInfo();
            ds = nhom.Get_List();
            if(ds == null || ds.Tables[0].Rows.Count == 0)
            {
                MessageBox.Show("Bạn phải thiết lập các nhóm hàng hóa trước!", "Thông báo");
                this.Close();
            }
            this.cboNhom.Properties.DataSource = ds.Tables[0];

            //Load đơn vị tính
            cs_erp_dvtInfo dvt = new cs_erp_dvtInfo();
            ds = dvt.Get_List();
            if (ds == null || ds.Tables[0].Rows.Count == 0)
            {
                MessageBox.Show("Bạn phải thiết lập danh mục đơn vị tính trước!", "Thông báo");
                this.Close();
            }
            this.cboDVT.Properties.DataSource = ds.Tables[0];
        }

        private void btnKhongluu_Click(object sender, EventArgs e)
        {
            this.Dispose(true);
        }
    }
}